/* Crea una zona de memoria común, escribe en ella y la borra */
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/shm.h>
#include "shmz.h" 
/* Fichero que contiene la información de la estructura de datos a
compartir */

/* Función principal */
int main(void)
{
int shmid;
memo *zona;
/* Creación de la zona de memoria compartida */
if((shmid = shmget(CLAVE_SHM, sizeof(memo), IPC_CREAT|0666)) == -1){
perror("shmget");
exit(EXIT_FAILURE);
}
/* Obtención del puntero a la estructura de datos compartida */
zona = (memo *)shmat(shmid,0,0);
/* Escribimos en la zona de memoria común */
zona->tarea = 2;
zona->valor = 3.1415;
/* Leemos los valores de las variables de la zona de memoria común */
printf("TAREA es: %d \n", zona->tarea);
printf("VALOR es: %f \n", zona->valor);
/* Borrado de la zona de memoria compartida */
shmctl(shmid, IPC_RMID,0);
}
/* Fin función principal */

